python语言的特点,计算生态,执行方式以及为什么需要python。
python是什么?
- 通用语言(全领域)
- 脚本语言(解释型语言)
- 动态语言(不适用显式数据类型声明)
- 强类型语言(不允许不同类型相加)
- 胶水语言
- 跨平台语言
- 多模型语言
语法简洁:简单易读,接近伪代码,代码量少,容易调试,快速开发
开源生态:可扩展功能强,避免重复造轮子
语法简介+开源生态=超级高产
python计算生态
- 没有顶层设计,开源项目野蛮生长,自然选择,高质量库众多
- 以功能为单位,以开源项目为形式
- 竞争发展
- 相互依存,依存发展或逐级封装
- 社区庞大,迅速更迭
编程语言执行方式:
编译执行
静态语言如c/c++/Java语言,源代码通过编译器生成目标代码,目标代码通过链接生成可执行程序,引导可执行程序创建进程,输入数据产生结果.
一次性翻译,之后不再需要源代码
编译阶段可以确定内存空间,基本程序逻辑等
编译过程没有时间限制,优化更充分,执行速度更快
编译后的程序可以在同系列系统中直接执行,不需要执行环境
解释执行
如Python/PHP/JavaScript语言,源代码与数据输入解释器,解释器将源代码逐条转换成目标代码同时逐条运行.
每次程序运行时都逐条解析源代码并执行
执行过程需要源代码,程序维护更灵活
不需要在编程阶段确定更多信息,根据代码执行的实际情况决定一切。
过在不同系统中配置执行环境,可以实现源代码的跨平台执行
编程语言千千万,为什么需要python?
python:平衡C和Shell
- 计算机技术演进过程
计算机系统结构时代 | 网络和视窗时代 | 复杂信息系统时代 | 人工智能时代 |
---|---|---|---|
1946-1981 | 1981-2008 | 2008-2016 | 2016-? |
庞大主机,灰白屏幕,多终端 | PC机,Windows系统 | 移动网络,安卓,苹果 | 阿尔法狗 |
计算性能问题 | 计算交互问题 | 数据周期问题 | 人类需求问题 |
C语言 | Java,HTML,VC,ASP | JS,Java,C++,php,R… | Python… |
理解计算机系统结构 | 理解主客体关系 | 理解主客体关系 | 理解问题求解 |
- 各编程语言的历史使命
编程语言 | 学习内容 | 语言本质 | 解决问题 | 适合岗位 |
---|---|---|---|---|
C | 指针,内存,数据类型 | 理解计算机系统结构 | 性能 | 系统底层开发 |
Java | 对象,跨平台,运行时 | 理解主客体关系 | 跨平台 | 网络后台及APP开发 |
C++ | 对象,多态,继承 | 理解主客体关系 | 大规模程序 | 应用类特定方向 |
VB/VC | 对象,按钮,文本框 | 理解交互逻辑 | 桌面交互 | 不定 |
Python | 编程逻辑,第三方库 | 理解问题求解 | 各类问题 | 大数据,人工智能等 |
- 现状
- 计算性能不是解决一般问题的瓶颈
- 大数据,云计算,物联网,信息安全,人工智能等需求爆发
- 计算领域核心矛盾转化为产量,效率和方法的不足